Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Database model</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Database_model"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Database_model rootpage-Database_model skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Database model</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1251242444">
/* start https://en.wikipedia.org/ */


.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style>


<p>A <b>database model</b> is a type of <a href="Data_model" title="Data model">data model</a> that determines the logical structure of a <a href="Database" title="Database">database</a>. It fundamentally determines in which manner <a href="Data" title="Data">data</a> can be stored, organized and manipulated. The most popular example of a database model is the <a href="Relational_model" title="Relational model">relational model</a>, which uses a table-based format.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Types">Types</h2></div>
<p>Common <a href="Logical_data_model" class="mw-redirect" title="Logical data model">logical data models</a> for databases include:
</p>
<ul><li><a href="Hierarchical_database_model" title="Hierarchical database model">Hierarchical database model</a></li></ul>
<dl><dd>This is the oldest form of database model. It was developed by IBM for IMS (information Management System), and is a set of organized data in tree structure. DB record is a tree consisting of many groups called segments. It uses <a href="One-to-many_(data_model)" title="One-to-many (data model)">one-to-many relationships</a>, and the data access is also predictable.</dd></dl>
<ul><li><a href="Network_model" title="Network model">Network model</a></li>
<li><a href="Relational_model" title="Relational model">Relational model</a></li>
<li><a href="Entity%E2%80%93relationship_model" title="Entity–relationship model">Entity–relationship model</a>
<ul><li><a href="Enhanced_entity%E2%80%93relationship_model" title="Enhanced entity–relationship model">Enhanced entity–relationship model</a></li></ul></li>
<li><a href="Object_database" title="Object database">Object model</a></li>
<li><a href="Document-oriented_database" title="Document-oriented database">Document model</a></li>
<li><a href="Entity%E2%80%93attribute%E2%80%93value_model" title="Entity–attribute–value model">Entity–attribute–value model</a></li>
<li><a href="Star_schema" title="Star schema">Star schema</a></li></ul>
<p>An <a href="Object%E2%80%93relational_database" title="Object–relational database">object–relational database</a> combines the two related structures.
</p><p><a href="Physical_data_model" class="mw-redirect" title="Physical data model">Physical data models</a> include:
</p>
<ul><li><a href="Inverted_index" title="Inverted index">Inverted index</a></li>
<li><a href="Flat_file_database" class="mw-redirect" title="Flat file database">Flat file</a></li></ul>
<p>Other models include:
</p>
<ul><li><a href="Multidimensional_database" class="mw-redirect" title="Multidimensional database">Multidimensional model</a></li>
<li><a href="Multivalue_model" class="mw-redirect" title="Multivalue model">Multivalue model</a></li>
<li><a href="Semantic_data_model" title="Semantic data model">Semantic model</a></li>
<li><a href="XML_database" title="XML database">XML database</a></li>
<li><a href="Named_graph" title="Named graph">Named graph</a></li>
<li><a href="Triplestore" title="Triplestore">Triplestore</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Relationships_and_functions">Relationships and functions</h2></div>
<p>A given database management system may provide one or more models. The optimal structure depends on the natural organization of the application's data, and on the application's requirements, which include transaction rate (speed), reliability, maintainability, scalability, and cost. Most <a href="Database_management_system" class="mw-redirect" title="Database management system">database management systems</a> are built around one particular data model, although it is possible for products to offer support for more than one model.
</p><p>Various <a href="Physical_data_model" class="mw-redirect" title="Physical data model">physical data models</a> can implement any given logical model. Most database software will offer the user some level of control in tuning the physical implementation, since the choices that are made have a significant effect on performance.
</p><p>A model is not just a way of structuring data: it also defines a set of operations that can be performed on the data.<sup id="cite_ref-Elmasri_1-0" class="reference"><a href="#cite_note-Elmasri-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> The relational model, for example, defines operations such as <a href="Selection_(relational_algebra)" title="Selection (relational algebra)">select</a>, <a href="Projection_(relational_algebra)" title="Projection (relational algebra)">project</a> and <a href="Relational_algebra#Common_extensions" title="Relational algebra">join</a>. Although these operations may not be explicit in a particular <a href="Query_language" title="Query language">query language</a>, they provide the foundation on which a query language is built.
</p>
<div class="mw-heading mw-heading2"><h2 id="Flat_model">Flat model</h2></div>

<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">Main articles: <a href="Flat_file_database" class="mw-redirect" title="Flat file database">Flat file database</a> and <a href="Spreadsheet" title="Spreadsheet">Spreadsheet</a></div>
<p>The <a href="Flat_file_database" class="mw-redirect" title="Flat file database">flat (or table) model</a> consists of a single, two-dimensional array of <a href="Data" title="Data">data</a> elements, where all members of a given column are assumed to be similar values, and all members of a row are assumed to be related to one another. For instance, columns for name and password that might be used as a part of a system security database. Each row would have the specific password associated with an individual user. Columns of the table often have a type associated with them, defining them as character data, date or time information, integers, or floating point numbers. This tabular format is a precursor to the relational model.
</p>
<div class="mw-heading mw-heading2"><h2 id="Early_data_models">Early data models</h2></div>
<p>These models were popular in the 1960s, 1970s, but nowadays can be found primarily in old <a href="Legacy_system" title="Legacy system">legacy systems</a>. They are characterized primarily by being <a href="Navigational_database" title="Navigational database">navigational</a> with strong connections between their logical and physical representations, and deficiencies in <a href="Data_independence" title="Data independence">data independence</a>.
</p>
<div class="mw-heading mw-heading3"><h3 id="Hierarchical_model">Hierarchical model</h3></div>

<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Hierarchical_model" class="mw-redirect" title="Hierarchical model">Hierarchical model</a></div>
<p>In a <a href="Hierarchical_database" class="mw-redirect" title="Hierarchical database">hierarchical model</a>, data is organized into a <a href="Tree_(data_structure)" class="mw-redirect" title="Tree (data structure)">tree-like structure</a>, implying a single parent for each record. A sort field keeps sibling records in a particular order. Hierarchical structures were widely used in the early mainframe database management systems, such as the <a href="Information_Management_System" class="mw-redirect" title="Information Management System">Information Management System</a> (IMS) by <a href="IBM" title="IBM">IBM</a>, and now describe the structure of <a href="XML" title="XML">XML</a> documents. This structure allows one-to-many relationship between two types of data. This structure is very efficient to describe many relationships in the real world; recipes, table of contents, ordering of paragraphs/verses, any nested and sorted information.
</p><p>This hierarchy is used as the physical order of records in storage. Record access is done by navigating downward through the data structure using <a href="Pointer_(computer_programming)" title="Pointer (computer programming)">pointers</a> combined with sequential accessing. Because of this, the hierarchical structure is inefficient for certain database operations when a full path (as opposed to upward link and sort field) is not also included for each record. Such limitations have been compensated for in later IMS versions by additional logical hierarchies imposed on the base physical hierarchy.
</p>
<div class="mw-heading mw-heading3"><h3 id="Network_model">Network model</h3></div>

<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Network_model" title="Network model">Network model</a></div>
<p>The <a href="Network_database" class="mw-redirect" title="Network database">network model</a> expands upon the hierarchical structure, allowing many-to-many relationships in a tree-like structure that allows multiple parents. It was most popular before being replaced by the relational model, and is defined by the <a href="CODASYL" title="CODASYL">CODASYL</a> specification.
</p><p>The network model organizes data using two fundamental concepts, called <i>records</i> and <i>sets</i>. Records contain fields (which may be organized hierarchically, as in the programming language <a href="COBOL" title="COBOL">COBOL</a>). Sets (not to be confused with mathematical sets) define <a href="One-to-many_(data_model)" title="One-to-many (data model)">one-to-many</a> relationships between records: one owner, many members. A record may be an owner in any number of sets, and a member in any number of sets.
</p><p>A set consists of circular <a href="Linked_list" title="Linked list">linked lists</a> where one record type, the set owner or parent, appears once in each circle, and a second record type, the subordinate or child, may appear multiple times in each circle. In this way a hierarchy may be established between any two record types, e.g., type A is the owner of B. At the same time another set may be defined where B is the owner of A. Thus all the sets comprise a general <a href="Directed_graph" title="Directed graph">directed graph</a> (ownership defines a direction), or <i>network</i> construct. Access to records is either sequential (usually in each record type) or by navigation in the circular linked lists.
</p><p>The network model is able to represent redundancy in data more efficiently than in the hierarchical model, and there can be more than one path from an ancestor node to a descendant. The operations of the network model are navigational in style: a program maintains a current position, and navigates from one record to another by following the relationships in which the record participates. Records can also be located by supplying key values.
</p><p>Although it is not an essential feature of the model, network databases generally implement the set relationships by means of <a href="Pointer_(computer_programming)" title="Pointer (computer programming)">pointers</a> that directly address the location of a record on disk. This gives excellent retrieval performance, at the expense of operations such as database loading and reorganization.
</p><p>Popular DBMS products that utilized it were <a href="Cincom_Systems" title="Cincom Systems">Cincom Systems</a>' Total and <a href="Cullinet" title="Cullinet">Cullinet</a>'s <a href="IDMS" title="IDMS">IDMS</a>. IDMS gained a considerable customer base; in the 1980s, it adopted the relational model and SQL in addition to its original tools and languages.
</p><p>Most <a href="Object_database" title="Object database">object databases</a> (invented in the 1990s) use the navigational concept to provide fast navigation across networks of objects, generally using object identifiers as "smart" pointers to related objects. <a href="Objectivity/DB" title="Objectivity/DB">Objectivity/DB</a>, for instance, implements named one-to-one, one-to-many, many-to-one, and many-to-many named relationships that can cross databases. Many object databases also support <a href="SQL" title="SQL">SQL</a>, combining the strengths of both models.
</p>
<div class="mw-heading mw-heading3"><h3 id="Inverted_file_model">Inverted file model</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Inverted_index" title="Inverted index">Inverted index</a></div>
<p>In an <i>inverted file</i> or <i><a href="Inverted_index" title="Inverted index">inverted index</a></i>, the contents of the data are used as keys in a lookup table, and the values in the table are pointers to the location of each instance of a given content item. This is also the logical structure of contemporary <a href="Index_(database)" class="mw-redirect" title="Index (database)">database indexes</a>, which might only use the contents from a particular columns in the lookup table. The <i>inverted file data model</i> can put indexes in a set of files next to existing flat database files, in order to efficiently directly access needed records in these files.
</p><p>Notable for using this data model is the <a href="ADABAS" title="ADABAS">ADABAS</a> DBMS of <a href="Software_AG" title="Software AG">Software AG</a>, introduced in 1970. ADABAS has gained considerable customer base and exists and supported until today. In the 1980s it has adopted the relational model and SQL in addition to its original tools and languages.
</p><p><a href="Document-oriented_database" title="Document-oriented database">Document-oriented database</a> <a href="Clusterpoint" title="Clusterpoint">Clusterpoint</a> uses inverted indexing model to provide fast <a href="Full-text_search" title="Full-text search">full-text search</a> for <a href="XML" title="XML">XML</a> or <a href="JSON" title="JSON">JSON</a> data objects for example.
</p>
<div class="mw-heading mw-heading2"><h2 id="Relational_model">Relational model</h2></div>

<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Relational_model" title="Relational model">Relational model</a></div>
<p>The <a href="Relational_model" title="Relational model">relational model</a> was introduced by <a href="E.F._Codd" class="mw-redirect" title="E.F. Codd">E.F. Codd</a> in 1970<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> as a way to make database management systems more independent of any particular application. It is a mathematical model defined in terms of <a href="Predicate_logic" class="mw-redirect" title="Predicate logic">predicate logic</a> and <a href="Set_theory" title="Set theory">set theory</a>, and implementations of it have been used by mainframe, midrange and microcomputer systems.
</p><p>The products that are generally referred to as <a href="Relational_database" title="Relational database">relational databases</a> in fact implement a model that is only an approximation to the mathematical model defined by Codd. Three key terms are used extensively in relational database models: <i><a href="Relation_(database)" title="Relation (database)">relations</a></i>, <i>attributes</i>, and <i><a href="Data_domain" title="Data domain">domains</a></i>. A relation is a table with columns and rows. The named columns of the relation are called attributes, and the domain is the set of values the attributes are allowed to take.
</p><p>The basic data structure of the relational model is the table, where information about a particular entity (say, an employee) is represented in rows (also called <a href="Tuple" title="Tuple">tuples</a>) and columns. Thus, the "<a href="Relation_(database)" title="Relation (database)">relation</a>" in "relational database" refers to the various tables in the database; a relation is a set of tuples. The columns enumerate the various attributes of the entity (the employee's name, address or phone number, for example), and a row is an actual instance of the entity (a specific employee) that is represented by the relation. As a result, each tuple of the employee table represents various attributes of a single employee.
</p><p>All relations (and, thus, tables) in a relational database have to adhere to some basic rules to qualify as relations. First, the ordering of columns is immaterial in a table. Second, there can not be identical tuples or rows in a table. And third, each tuple will contain a single value for each of its attributes.
</p><p>A relational database contains multiple tables, each similar to the one in the "flat" database model. One of the strengths of the relational model is that, in principle, any value occurring in two different records (belonging to the same table or to different tables), implies a relationship among those two records. Yet, in order to enforce explicit <a href="Integrity_constraints" class="mw-redirect" title="Integrity constraints">integrity constraints</a>, relationships between records in tables can also be defined explicitly, by identifying or non-identifying parent-child relationships characterized by assigning cardinality (1:1, (0)1:M, M:M). Tables can also have a designated single attribute or a set of attributes that can act as a "key", which can be used to uniquely identify each tuple in the table.
</p><p>A key that can be used to uniquely identify a row in a table is called a primary key. Keys are commonly used to join or combine data from two or more tables. For example, an <i>Employee</i> table may contain a column named <i>Location</i> which contains a value that matches the key of a <i>Location</i> table. Keys are also critical in the creation of indexes, which facilitate fast retrieval of data from large tables. Any column can be a key, or multiple columns can be grouped together into a compound key. It is not necessary to define all the keys in advance; a column can be used as a key even if it was not originally intended to be one.
</p><p>A key that has an external, real-world meaning (such as a person's name, a book's <a href="ISBN" title="ISBN">ISBN</a>, or a car's serial number) is sometimes called a "natural" key. If no natural key is suitable (think of the many people named <i>Brown</i>), an arbitrary or surrogate key can be assigned (such as by giving employees ID numbers). In practice, most databases have both generated and natural keys, because generated keys can be used internally to create links between rows that cannot break, while natural keys can be used, less reliably, for searches and for integration with other databases. (For example, records in two independently developed databases could be matched up by <a href="Social_security_number" class="mw-redirect" title="Social security number">social security number</a>, except when the social security numbers are incorrect, missing, or have changed.)
</p><p>The most common query language used with the relational model is the Structured Query Language (<a href="SQL" title="SQL">SQL</a>).
</p>
<div class="mw-heading mw-heading3"><h3 id="Dimensional_model">Dimensional model</h3></div>
<p>The <a href="Dimensional_database" class="mw-redirect" title="Dimensional database">dimensional model</a> is a specialized adaptation of the relational model used to represent data in <a href="Data_warehouse" title="Data warehouse">data warehouses</a> in a way that data can be easily summarized using online analytical processing, or <a href="OLAP" class="mw-redirect" title="OLAP">OLAP</a> queries. In the dimensional model, a database schema consists of a single large table of facts that are described using dimensions and measures. A dimension provides the context of a fact (such as who participated, when and where it happened, and its type) and is used in queries to group related facts together. Dimensions tend to be discrete and are often hierarchical; for example, the location might include the building, state, and country. A measure is a quantity describing the fact, such as revenue. It is important that measures can be meaningfully aggregated—for example, the revenue from different locations can be added together.
</p><p>In an OLAP query, dimensions are chosen and the facts are grouped and aggregated together to create a summary.
</p><p>The dimensional model is often implemented on top of the relational model using a <a href="Star_schema" title="Star schema">star schema</a>, consisting of one highly normalized table containing the facts, and surrounding denormalized tables containing each dimension. An alternative physical implementation, called a <a href="Snowflake_schema" title="Snowflake schema">snowflake schema</a>, normalizes multi-level hierarchies within a dimension into multiple tables.
</p><p>A data warehouse can contain multiple dimensional schemas that share dimension tables, allowing them to be used together. Coming up with a standard set of dimensions is an important part of <a href="Dimensional_modeling" title="Dimensional modeling">dimensional modeling</a>.
</p><p>Its high performance has made the dimensional model the most popular database structure for OLAP.
</p>
<div class="mw-heading mw-heading2"><h2 id="Post-relational_database_models">Post-relational database models</h2></div>
<p>Products offering a more general data model than the relational model are sometimes classified as <i>post-relational</i>.<sup id="cite_ref-CONR_3-0" class="reference"><a href="#cite_note-CONR-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> Alternate terms include "hybrid database", "Object-enhanced RDBMS" and others. The data model in such products incorporates <a href="Relation_(database)" title="Relation (database)">relations</a> but is not constrained by <a href="E.F._Codd" class="mw-redirect" title="E.F. Codd">E.F. Codd</a>'s Information Principle, which requires that
</p>
<style data-mw-deduplicate="TemplateStyles:r1244412712">
/* start https://en.wikipedia.org/ */


.mw-parser-output .templatequote{overflow:hidden;margin:1em 0;padding:0 32px}.mw-parser-output .templatequotecite{line-height:1.5em;text-align:left;margin-top:0}@media(min-width:500px){.mw-parser-output .templatequotecite{padding-left:1.6em}}


/* end https://en.wikipedia.org/ */
</style><blockquote class="templatequote"><p>all information in the database must be cast explicitly in terms of values in relations and in no other way</p></blockquote><div class="templatequotecite"><p style="display: inline; padding-left: 2.3em;">— <sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup></p></div>
<p>Some of these extensions to the relational model integrate concepts from technologies that pre-date the relational model. For example, they allow representation of a directed graph with <a href="Tree_data_structure" class="mw-redirect" title="Tree data structure">trees</a> on the nodes. The German company <i>sones</i> implements this concept in its <a href="GraphDB" class="mw-redirect" title="GraphDB">GraphDB</a>.
</p><p>Some post-relational products extend relational systems with non-relational features. Others arrived in much the same place by adding relational features to pre-relational systems. Paradoxically, this allows products that are historically pre-relational, such as <a href="Pick_operating_system" title="Pick operating system">PICK</a> and <a href="MUMPS" title="MUMPS">MUMPS</a>, to make a plausible claim to be post-relational.
</p><p>The resource space model (RSM) is a non-relational data model based on multi-dimensional classification.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Graph_model">Graph model</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Graph_database" title="Graph database">Graph database</a></div>
<p>Graph databases allow even more general structure than a network database; any node may be connected to any other node.
</p>
<div class="mw-heading mw-heading3"><h3 id="Multivalue_model">Multivalue model</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="MultiValue" class="mw-redirect" title="MultiValue">MultiValue</a></div>
<p>Multivalue databases are "lumpy" data, in that they can store exactly the same way as relational databases, but they also permit a level of depth which the relational model can only approximate using sub-tables. This is nearly identical to the way XML expresses data, where a given field/attribute can have multiple right answers at the same time. Multivalue can be thought of as a compressed form of XML.
</p><p>An example is an invoice, which in either multivalue or relational data could be seen as (A) Invoice Header Table - one entry per invoice, and (B) Invoice Detail Table - one entry per line item. In the multivalue model, we have the option of storing the data as on table, with an embedded table to represent the detail: (A) Invoice Table - one entry per invoice, no other tables needed.
</p><p>The advantage is that the atomicity of the Invoice (conceptual) and the Invoice (data representation) are one-to-one. This also results in fewer reads, less referential integrity issues, and a dramatic decrease in the hardware needed to support a given transaction volume.
</p>
<div class="mw-heading mw-heading3"><h3 id="Object-oriented_database_models">Object-oriented database models</h3></div>

<div role="note" class="hatnote navigation-not-searchable">Main articles: <a href="Object%E2%80%93relational_model" class="mw-redirect" title="Object–relational model">Object–relational model</a> and <a href="Object_model" title="Object model">Object model</a></div>
<p>In the 1990s, the <a href="Object-oriented_programming" title="Object-oriented programming">object-oriented programming</a> paradigm was applied to database technology, creating a new database model known as <a href="Object_database" title="Object database">object databases</a>. This aims to avoid the <a href="Object%E2%80%93relational_impedance_mismatch" title="Object–relational impedance mismatch">object–relational impedance mismatch</a> – the overhead of converting information between its representation in the database (for example as rows in tables) and its representation in the application program (typically as objects). Even further, the <a href="Type_system" title="Type system">type system</a> used in a particular application can be defined directly in the database, allowing the database to enforce the same data integrity invariants. Object databases also introduce the key ideas of object programming, such as <a href="Encapsulation_(computer_science)" class="mw-redirect" title="Encapsulation (computer science)">encapsulation</a> and <a href="Polymorphism_(computer_science)" title="Polymorphism (computer science)">polymorphism</a>, into the world of databases.
</p><p>A variety of these ways have been tried for storing objects in a database. Some products have approached the problem from the application programming end, by making the objects manipulated by the program <a href="Persistence_(computer_science)" title="Persistence (computer science)">persistent</a>. This typically requires the addition of some kind of query language, since conventional programming languages do not have the ability to find objects based on their information content. Others have attacked the problem from the database end, by defining an object-oriented data model for the database, and defining a database programming language that allows full programming capabilities as well as traditional query facilities.
</p><p>Object databases suffered because of a lack of standardization: although standards were defined by <a href="Object_Database_Management_Group" class="mw-redirect" title="Object Database Management Group">ODMG</a>, they were never implemented well enough to ensure interoperability between products. Nevertheless, object databases have been used successfully in many applications: usually specialized applications such as engineering databases or molecular biology databases rather than mainstream commercial data processing. However, object database ideas were picked up by the relational vendors and influenced extensions made to these products and indeed to the <a href="SQL" title="SQL">SQL</a> language.
</p><p>An alternative to translating between objects and relational databases is to use an <a href="Object%E2%80%93relational_mapping" title="Object–relational mapping">object–relational mapping</a> (ORM) library.
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Database_design" title="Database design">Database design</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1290876196">
/* start https://en.wikipedia.org/ */


.mw-parser-output .side-box{margin:4px 0;box-sizing:border-box;border:1px solid #aaa;font-size:88%;line-height:1.25em;background-color:var(--background-color-interactive-subtle,#f8f9fa);display:flow-root}.mw-parser-output .infobox .side-box{font-size:100%}.mw-parser-output .side-box-abovebelow,.mw-parser-output .side-box-text{padding:0.25em 0.9em}.mw-parser-output .side-box-image{padding:2px 0 2px 0.9em;text-align:center}.mw-parser-output .side-box-imageright{padding:2px 0.9em 2px 0;text-align:center}@media(min-width:500px){.mw-parser-output .side-box-flex{display:flex;align-items:center}.mw-parser-output .side-box-text{flex:1;min-width:0}}@media(min-width:720px){.mw-parser-output .side-box{width:238px}.mw-parser-output .side-box-right{clear:right;float:right;margin-left:1em}.mw-parser-output .side-box-left{margin-right:1em}}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1237033735">
/* start https://en.wikipedia.org/ */


@media print{body.ns-0 .mw-parser-output .sistersitebox{display:none!important}}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sistersitebox img[src*="Wiktionary-logo-en-v2.svg"]{background-color:white}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sistersitebox img[src*="Wiktionary-logo-en-v2.svg"]{background-color:white}}


/* end https://en.wikipedia.org/ */
</style><div class="side-box side-box-right sistersitebox"><style data-mw-deduplicate="TemplateStyles:r1126788409">
/* start https://en.wikipedia.org/ */


.mw-parser-output .plainlist ol,.mw-parser-output .plainlist ul{line-height:inherit;list-style:none;margin:0;padding:0}.mw-parser-output .plainlist ol li,.mw-parser-output .plainlist ul li{margin-bottom:0}


/* end https://en.wikipedia.org/ */
</style>
<div class="side-box-flex">
<div class="side-box-image"><span class="noviewer" typeof="mw:File"></span></div>
<div class="side-box-text plainlist">Wikimedia Commons has media related to <span style="font-weight: bold; font-style: italic;"><a href="https://commons.wikimedia.org/wiki/Category:Database_models" class="extiw external" title="commons:Category:Database models">Database models</a></span>.</div></div>
</div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-Elmasri-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-Elmasri_1-0">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFElmasriNavathe2016" class="citation book cs1">Elmasri, Ramez; Navathe, Shamkant (2016). <i>Fundamentals of database systems</i> (Seventh&nbsp;ed.). p.&nbsp;33. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>9780133970777</bdi>.</cite></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text">E.F. Codd (1970). "A relational model of data for large shared data banks". In: <i>Communications of the ACM archive</i>. Vol 13. Issue 6(June 1970). pp.377-387.</span>
</li>
<li id="cite_note-CONR-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-CONR_3-0">^</a></b></span> <span class="reference-text"><i>Introducing databases</i> by Stephen Chu, in Conrick, M. (2006) <i>Health informatics: transforming healthcare with technology</i>, Thomson, <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>0-17-012731-1</bdi>, p. 69.</span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite id="CITEREFDate1999" class="citation journal cs1"><a href="Christopher_J._Date" title="Christopher J. Date">Date, C. J.</a> (June 1, 1999). <a rel="nofollow" class="external text" href="http://intelligent-enterprise.informationweek.com/db_area/archives/1999/990106/online1.jhtml;jsessionid=Y2UNK1QFKXMBTQE1GHRSKH4ATMY32JVN">"When's an extension not an extension?"</a>. <i>Intelligent Enterprise</i>. <b>2</b> (8).</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite id="CITEREFZhuge2008" class="citation book cs1">Zhuge, H. (2008). <i>The Web Resource Space Model</i>. Web Information Systems Engineering and Internet Technologies Book Series. Vol.&nbsp;4. Springer. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-0-387-72771-4</bdi>.</cite></span>
</li>
</ol></div></div>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Database_models59" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div id="Database_models59" style="font-size:114%;margin:0 4em"></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Common models</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Flat-file_database" title="Flat-file database">Flat</a></li>
<li><a href="Hierarchical_database_model" title="Hierarchical database model">Hierarchical</a></li>
<li><a href="Dimensional_modeling" title="Dimensional modeling">Dimensional</a></li>
<li><a href="Network_model" title="Network model">Network</a></li>
<li><a href="Relational_model" title="Relational model">Relational</a></li>
<li><a href="Entity%E2%80%93relationship_model" title="Entity–relationship model">Entity–relationship</a>
<ul><li><a href="Enhanced_entity%E2%80%93relationship_model" title="Enhanced entity–relationship model">Enhanced</a></li></ul></li>
<li><a href="Graph_database" title="Graph database">Graph</a></li>
<li><a href="Object_database" title="Object database">Object-oriented</a></li>
<li><a href="Entity%E2%80%93attribute%E2%80%93value_model" title="Entity–attribute–value model">Entity–attribute–value</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Other models</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Online_analytical_processing#Multidimensional_databases" title="Online analytical processing">Multi-dimensional</a></li>
<li><a href="Array_DBMS" title="Array DBMS">Array</a></li>
<li><a href="Semantic_data_model" title="Semantic data model">Semantic</a></li>
<li><a href="Star_schema" title="Star schema">Star schema</a></li>
<li><a href="XML_database" title="XML database">XML database</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Implementations</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Flat-file_database" title="Flat-file database">Flat file</a></li>
<li><a href="Column-oriented_DBMS" class="mw-redirect" title="Column-oriented DBMS">Column-oriented</a></li>
<li><a href="Document-oriented_database" title="Document-oriented database">Document-oriented</a></li>
<li><a href="Object%E2%80%93relational_database" title="Object–relational database">Object–relational</a></li>
<li><a href="Deductive_database" title="Deductive database">Deductive</a></li>
<li><a href="Temporal_database" title="Temporal database">Temporal</a>
<ul><li><a href="Valid_time" title="Valid time">Valid time</a></li>
<li><a href="Transaction_time" title="Transaction time">Transaction time</a></li>
<li><a href="Decision_time" title="Decision time">Decision time</a></li></ul></li>
<li><a href="XML_database" title="XML database">XML data store</a></li>
<li><a href="Key%E2%80%93value_database" title="Key–value database">Key–value store</a></li>
<li><a href="Ordered_Key-Value_Store" class="mw-redirect" title="Ordered Key-Value Store">Ordered Key-Value Store</a></li>
<li><a href="Triplestore" title="Triplestore">Triplestore</a></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Data_model52" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Data_model52" style="font-size:114%;margin:0 4em"><a href="Data_model" title="Data model">Data model</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Main</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Data_architecture" title="Data architecture">Architecture</a></li>
<li><a href="Data_modeling" title="Data modeling">Modeling</a></li>
<li><a href="Data_structure" title="Data structure">Structure</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Schemas</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Conceptual_schema" title="Conceptual schema">Conceptual </a></li>
<li><a href="Logical_data_model" class="mw-redirect" title="Logical data model">Logical</a></li>
<li><a href="Physical_schema" title="Physical schema">Physical</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Types</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul>
<li><a href="Data_structure_diagram" title="Data structure diagram">Data structure diagram</a></li>
<li><a href="Entity%E2%80%93relationship_model" title="Entity–relationship model">Entity–relationship model</a> (<a href="Enhanced_entity%E2%80%93relationship_model" title="Enhanced entity–relationship model">enhanced</a>)</li>
<li><a href="Data_model_(GIS)" title="Data model (GIS)">Geographic</a></li>
<li><a href="Generic_data_model" title="Generic data model">Generic</a></li>
<li><a href="Semantic_data_model" title="Semantic data model">Semantic</a></li>
<li><a href="Common_data_model" title="Common data model">Common</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Related models</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Data-flow_diagram" title="Data-flow diagram">Data-flow diagram</a></li>
<li><a href="Information_model" title="Information model">Information model</a></li>
<li><a href="Object_model" title="Object model">Object model</a></li>
<li><a href="Object%E2%80%93role_modeling" title="Object–role modeling">Object–role modeling</a></li>
<li><a href="Unified_Modeling_Language" title="Unified Modeling Language">Unified Modeling Language</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">See also</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database_design" title="Database design">Database design</a></li>
<li><a href="Business_process_modeling" title="Business process modeling">Business process modeling</a></li>
<li><a href="Core_architecture_data_model" title="Core architecture data model">Core architecture data model</a></li>
<li><a href="Enterprise_modelling" title="Enterprise modelling">Enterprise modelling</a></li>
<li><a href="Function_model" title="Function model">Function model</a></li>
<li><a href="Process_modeling" title="Process modeling">Process modeling</a></li>
<li><a href="XML_schema" title="XML schema">XML schema</a></li>
<li><a href="Data_Format_Description_Language" title="Data Format Description Language">Data Format Description Language</a></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Database414" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Database414" style="font-size:114%;margin:0 4em"><a href="Database" title="Database">Database</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Main</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database#Major_database_usage_requirements" title="Database">Requirements</a></li>
<li><a href="Database_theory" title="Database theory">Theory</a></li>
<li><a href="Database_object" title="Database object">Database object</a></li>

<li><a href="Database_management_system" class="mw-redirect" title="Database management system">Database management system</a></li>
<li><a href="Database_machine" title="Database machine">Machine</a></li>
<li><a href="Database_engine" title="Database engine">Engine</a></li>
<li><a href="Database_server" title="Database server">Server</a></li>
<li><a href="Database_application" title="Database application">Application</a></li>
<li><a href="Database_connection" title="Database connection">Connection</a>
<ul><li><a href="Datasource" title="Datasource">datasource</a></li>
<li><a href="Data_Source_Name" class="mw-redirect" title="Data Source Name">DSN</a></li></ul></li>
<li><a href="Database_administrator" title="Database administrator">Administrator</a></li>
<li><a href="Synonym_(database)" title="Synonym (database)">Synonym</a></li>
<li><a href="Lock_(database)" class="mw-redirect" title="Lock (database)">Lock</a></li>
<li>Types</li>
<li><a href="Comparison_of_database_tools" class="mw-redirect" title="Comparison of database tools">Tools</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Database#Database_languages" title="Database">Languages</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Data_definition_language" title="Data definition language">Data definition</a></li>
<li><a href="Data_manipulation_language" title="Data manipulation language">Data manipulation</a></li>
<li><a href="Query_language" title="Query language">Query</a>
<ul><li><a href="Information_retrieval_query_language" class="mw-redirect" title="Information retrieval query language">information retrieval</a></li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Database_security" title="Database security">Security</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database_activity_monitoring" title="Database activity monitoring">Activity monitoring</a></li>
<li><a href="Database_audit" title="Database audit">Audit</a></li>
<li><a href="Database_forensics" title="Database forensics">Forensics</a></li>
<li><a href="Negative_database" title="Negative database">Negative database</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Database_design" title="Database design">Design</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Entity%E2%80%93relationship_model" title="Entity–relationship model">Entities and relationships</a> (and <a href="Enhanced_entity%E2%80%93relationship_model" title="Enhanced entity–relationship model">Enhanced</a> notation)</li>
<li><a href="Database_normalization" title="Database normalization">Normalization</a></li>
<li><a href="Database_schema" title="Database schema">Schema</a></li>
<li><a href="Database_refactoring" title="Database refactoring">Refactoring</a></li>
<li><a href="Cardinality_(data_modeling)" title="Cardinality (data modeling)">Cardinality</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Programming</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database_abstraction_layer" title="Database abstraction layer">Abstraction layer</a></li>
<li><a href="Object%E2%80%93relational_mapping" title="Object–relational mapping">Object–relational mapping</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Management</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database_virtualization" title="Database virtualization">Virtualization</a></li>
<li><a href="Database_tuning" title="Database tuning">Tuning</a>
<ul><li><a href="Database_caching" title="Database caching">caching</a></li></ul></li>
<li><a href="Data_migration#Database_migration" title="Data migration">Migration</a></li>
<li><a href="Database_preservation" title="Database preservation">Preservation</a></li>
<li><a href="Database_integrity" class="mw-redirect" title="Database integrity">Integrity</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Lists_of_databases" title="Lists of databases">Lists of</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="List_of_academic_databases_and_search_engines" title="List of academic databases and search engines">Academic</a></li>
<li><a href="List_of_biological_databases" title="List of biological databases">Biological</a></li>
<li><a href="List_of_biodiversity_databases" title="List of biodiversity databases">Biodiversity</a></li>
<li><a href="List_of_facial_expression_databases" title="List of facial expression databases">Facial expression</a></li>
<li><a href="List_of_online_databases" title="List of online databases">Online</a></li>
<li><a href="List_of_online_music_databases" title="List of online music databases">Online music</a></li>
<li><a href="List_of_online_real_estate_databases" title="List of online real estate databases">Online real estate</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">See also</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database-centric_architecture" title="Database-centric architecture">Database-centric architecture</a></li>
<li><a href="Intelligent_database" title="Intelligent database">Intelligent database</a></li>
<li><a href="Two-phase_locking" title="Two-phase locking">Two-phase locking</a></li>
<li><a href="Locks_with_ordered_sharing" title="Locks with ordered sharing">Locks with ordered sharing</a></li>
<li><a href="Load_file" title="Load file">Load file</a></li>
<li><a href="Database_publishing" title="Database publishing">Publishing</a></li>
<li><a href="Halloween_Problem" title="Halloween Problem">Halloween Problem</a></li>
<li><a href="Log_shipping" title="Log shipping">Log shipping</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow hlist" colspan="2"><div><b><span class="noviewer" typeof="mw:File"><span title="WikiProject"></span></span> WikiProject</b> <b><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> Category</b></div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Database_management_systems327" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Database_management_systems327" style="font-size:114%;margin:0 4em"><a href="Database" title="Database">Database management systems</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Types</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Object_database" title="Object database">Object-oriented</a>
<ul><li><a href="Comparison_of_object_database_management_systems" title="Comparison of object database management systems">comparison</a></li></ul></li>
<li><a href="Relational_database" title="Relational database">Relational</a>
<ul><li><a href="List_of_relational_database_management_systems" title="List of relational database management systems">list</a></li>
<li><a href="Comparison_of_relational_database_management_systems" title="Comparison of relational database management systems">comparison</a></li></ul></li>
<li><a href="Key%E2%80%93value_database" title="Key–value database">Key–value</a></li>
<li><a href="Column-oriented_DBMS" class="mw-redirect" title="Column-oriented DBMS">Column-oriented</a>
<ul><li><a href="List_of_column-oriented_DBMSes" title="List of column-oriented DBMSes">list</a></li></ul></li>
<li><a href="Document-oriented_database" title="Document-oriented database">Document-oriented</a></li>
<li><a href="Wide-column_store" title="Wide-column store">Wide-column store</a></li>
<li><a href="Graph_database" title="Graph database">Graph</a></li>
<li><a href="NoSQL" title="NoSQL">NoSQL</a></li>
<li><a href="NewSQL" title="NewSQL">NewSQL</a></li>
<li><a href="In-memory_database" title="In-memory database">In-memory</a>
<ul><li><a href="List_of_in-memory_databases" title="List of in-memory databases">list</a></li></ul></li>
<li><a href="Multi-model_database" title="Multi-model database">Multi-model</a>
<ul><li><a href="Comparison_of_multi-model_databases" title="Comparison of multi-model databases">comparison</a></li></ul></li>
<li><a href="Cloud_database" title="Cloud database">Cloud</a></li>
<li><a href="Blockchain-based_database" title="Blockchain-based database">Blockchain-based database</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Concepts</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database" title="Database">Database</a></li>
<li><a href="ACID" title="ACID">ACID</a></li>
<li><a href="Armstrong's_axioms" title="Armstrong's axioms">Armstrong's axioms</a></li>
<li><a href="Codd's_12_rules" title="Codd's 12 rules">Codd's 12 rules</a></li>
<li><a href="CAP_theorem" title="CAP theorem">CAP theorem</a></li>
<li><a href="Create%2C_read%2C_update_and_delete" title="Create, read, update and delete">CRUD</a></li>
<li><a href="Null_(SQL)" title="Null (SQL)">Null</a></li>
<li><a href="Candidate_key" title="Candidate key">Candidate key</a></li>
<li><a href="Foreign_key" title="Foreign key">Foreign key</a></li>
<li><a href="PACELC_design_principle" title="PACELC design principle">PACELC design principle</a></li>
<li><a href="Superkey" title="Superkey">Superkey</a></li>
<li><a href="Surrogate_key" title="Surrogate key">Surrogate key</a></li>
<li><a href="Unique_key" title="Unique key">Unique key</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Objects</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Relation_(database)" title="Relation (database)">Relation</a>
<ul><li><a href="Table_(database)" title="Table (database)">table</a></li>
<li><a href="Column_(database)" title="Column (database)">column</a></li>
<li><a href="Row_(database)" title="Row (database)">row</a></li></ul></li>
<li><a href="View_(SQL)" title="View (SQL)">View</a></li>
<li><a href="Database_transaction" title="Database transaction">Transaction</a></li>
<li><a href="Transaction_log" title="Transaction log">Transaction log</a></li>
<li><a href="Database_trigger" title="Database trigger">Trigger</a></li>
<li><a href="Database_index" title="Database index">Index</a></li>
<li><a href="Stored_procedure" title="Stored procedure">Stored procedure</a></li>
<li><a href="Cursor_(databases)" title="Cursor (databases)">Cursor</a></li>
<li><a href="Partition_(database)" title="Partition (database)">Partition</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Components</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Concurrency_control" title="Concurrency control">Concurrency control</a></li>
<li><a href="Data_dictionary" title="Data dictionary">Data dictionary</a></li>
<li><a href="Java_Database_Connectivity" title="Java Database Connectivity">JDBC</a></li>
<li><a href="XQuery_API_for_Java" title="XQuery API for Java">XQJ</a></li>
<li><a href="Open_Database_Connectivity" title="Open Database Connectivity">ODBC</a></li>
<li><a href="Query_language" title="Query language">Query language</a></li>
<li><a href="Query_optimization" title="Query optimization">Query optimizer</a></li>
<li><a href="Query_Rewriting" class="mw-redirect" title="Query Rewriting">Query rewriting system</a></li>
<li><a href="Query_plan" title="Query plan">Query plan</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Functions</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database_administration" title="Database administration">Administration</a></li>
<li><a href="Query_optimization" title="Query optimization">Query optimization</a></li>
<li><a href="Replication_(computing)#DATABASE" title="Replication (computing)">Replication</a></li>
<li><a href="Shard_(database_architecture)" title="Shard (database architecture)">Sharding</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Related topics</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul>
<li><a href="Database_normalization" title="Database normalization">Database normalization</a></li>
<li>Database storage</li>
<li><a href="Distributed_database" title="Distributed database">Distributed database</a></li>
<li><a href="Federated_database_system" title="Federated database system">Federated database system</a></li>
<li><a href="Referential_integrity" title="Referential integrity">Referential integrity</a></li>
<li><a href="Relational_algebra" title="Relational algebra">Relational algebra</a></li>
<li><a href="Relational_calculus" title="Relational calculus">Relational calculus</a></li>
<li><a href="Relational_model" title="Relational model">Relational model</a></li>
<li><a href="Object%E2%80%93relational_database" title="Object–relational database">Object–relational database</a></li>
<li><a href="Transaction_processing" title="Transaction processing">Transaction processing</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div>
<ul><li><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> Category</li>
<li><span class="noviewer" typeof="mw:File"><span title="Outline"></span></span> <a href="Outline_of_databases" title="Outline of databases">Outline</a></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Software_engineering336" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Software_engineering336" style="font-size:114%;margin:0 4em"><a href="Software_engineering" title="Software engineering">Software engineering</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Fields</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Computer_programming" title="Computer programming">Computer programming</a></li>
<li><a href="DevOps" title="DevOps">DevOps</a></li>
<li><a href="Empirical_software_engineering" title="Empirical software engineering">Empirical software engineering</a></li>
<li><a href="Experimental_software_engineering" title="Experimental software engineering">Experimental software engineering</a></li>
<li><a href="Formal_methods" title="Formal methods">Formal methods</a></li>
<li><a href="Requirements_engineering" title="Requirements engineering">Requirements engineering</a></li>
<li><a href="Search-based_software_engineering" title="Search-based software engineering">Search-based software engineering</a></li>
<li><a href="Site_reliability_engineering" title="Site reliability engineering">Site reliability engineering</a></li>
<li><a href="Social_software_engineering" title="Social software engineering">Social software engineering</a></li>
<li><a href="Software_deployment" title="Software deployment">Software deployment</a></li>
<li><a href="Software_design" title="Software design">Software design</a></li>
<li><a href="Software_maintenance" title="Software maintenance">Software maintenance</a></li>
<li><a href="Software_testing" title="Software testing">Software testing</a></li>
<li><a href="Systems_analysis" title="Systems analysis">Systems analysis</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Concepts</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Abstraction_(computer_science)" title="Abstraction (computer science)">Abstraction</a></li>
<li><a href="CI/CD" title="CI/CD">CI/CD</a></li>
<li><a href="Computer_compatibility" title="Computer compatibility">Compatibility</a>
<ul><li><a href="Backward_compatibility" title="Backward compatibility">Backward compatibility</a></li>
<li><a href="Compatibility_layer" title="Compatibility layer">Compatibility layer</a></li>
<li><a href="Compatibility_mode" title="Compatibility mode">Compatibility mode</a></li>
<li><a href="Forward_compatibility" title="Forward compatibility">Forward compatibility</a></li>
<li><a href="Software_incompatibility" title="Software incompatibility">Software incompatibility</a></li></ul></li>
<li><a href="Component-based_software_engineering" title="Component-based software engineering">Component-based software engineering</a></li>
<li><a href="Data_modeling" title="Data modeling">Data modeling</a></li>
<li><a href="Enterprise_architecture" title="Enterprise architecture">Enterprise architecture</a></li>
<li><a href="Functional_specification" title="Functional specification">Functional specification</a></li>
<li><a href="Modeling_language" title="Modeling language">Modeling language</a></li>
<li><a href="Programming_paradigm" title="Programming paradigm">Programming paradigm</a></li>
<li><a href="Software" title="Software">Software</a></li>
<li><a href="Software_archaeology" title="Software archaeology">Software archaeology</a></li>
<li><a href="Software_architecture" title="Software architecture">Software architecture</a></li>
<li><a href="Software_configuration_management" title="Software configuration management">Software configuration management</a></li>
<li><a href="Software_development_process" title="Software development process">Software development process/methodology</a></li>
<li><a href="Software_quality" title="Software quality">Software quality</a></li>
<li><a href="Software_quality_assurance" title="Software quality assurance">Software quality assurance</a></li>
<li><a href="Software_system" title="Software system">Software system</a></li>
<li><a href="Software_verification_and_validation" title="Software verification and validation">Software verification and validation</a></li>
<li><a href="Structured_analysis" title="Structured analysis">Structured analysis</a>
<ul><li><a href="Essential_systems_analysis" title="Essential systems analysis">Essential analysis</a></li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Orientations</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Agile_software_development" title="Agile software development">Agile</a></li>
<li><a href="Aspect-oriented_programming" title="Aspect-oriented programming">Aspect-oriented</a></li>
<li><a href="Object-oriented_programming" title="Object-oriented programming">Object orientation</a></li>
<li><a href="Ontology_(information_science)" title="Ontology (information science)">Ontology</a></li>
<li><a href="Systems_development_life_cycle" title="Systems development life cycle">SDLC</a></li>
<li><a href="Service-oriented_architecture" title="Service-oriented architecture">Service orientation</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Models</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">Developmental</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Agile_software_development" title="Agile software development">Agile</a></li>
<li><a href="Enterprise_unified_process" title="Enterprise unified process">EUP</a></li>
<li><a href="Executable_UML" title="Executable UML">Executable UML</a></li>
<li><a href="Incremental_build_model" title="Incremental build model">Incremental model</a></li>
<li><a href="Iterative_and_incremental_development" title="Iterative and incremental development">Iterative model</a></li>
<li><a href="Software_prototyping" title="Software prototyping">Prototype model</a></li>
<li><a href="Rapid_application_development" title="Rapid application development">RAD</a></li>
<li><a href="Scrum_(software_development)" title="Scrum (software development)">Scrum</a></li>
<li><a href="Spiral_model" title="Spiral model">Spiral model</a></li>
<li><a href="Unified_process" title="Unified process">UP</a></li>
<li><a href="V-model_(software_development)" title="V-model (software development)">V-model</a></li>
<li><a href="Waterfall_model" title="Waterfall model">Waterfall model</a></li>
<li><a href="Extreme_programming" title="Extreme programming">XP</a></li>
<li><a href="Model-driven_engineering" title="Model-driven engineering">Model-driven engineering</a></li>
<li><a href="Round-trip_engineering" title="Round-trip engineering">Round-trip engineering</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">Other</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Capability_Maturity_Model_Integration" title="Capability Maturity Model Integration">CMMI</a></li>
<li><a href="Data_model" title="Data model">Data model</a></li>
<li><a href="Entity%E2%80%93relationship_model" title="Entity–relationship model">ER model</a></li>
<li><a href="Function_model" title="Function model">Function model</a></li>
<li><a href="Information_model" title="Information model">Information model</a></li>
<li><a href="Metamodeling" title="Metamodeling">Metamodeling</a></li>
<li><a href="Object_model" title="Object model">Object model</a></li>
<li><a href="ISO/IEC_15504" title="ISO/IEC 15504">SPICE</a></li>
<li><a href="Systems_modeling" title="Systems modeling">Systems model</a></li>
<li><a href="View_model" title="View model">View model</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">Languages</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="IDEF" title="IDEF">IDEF</a></li>
<li><a href="Systems_modeling_language" title="Systems modeling language">SysML</a></li>
<li><a href="Unified_Modeling_Language" title="Unified Modeling Language">UML</a></li>
<li><a href="Universal_Systems_Language" title="Universal Systems Language">USL</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Systems_design" title="Systems design">Systems design</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Software_requirements_specification" title="Software requirements specification"> Requirements</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Functional_requirement" title="Functional requirement">Functional requirement</a></li>
<li><a href="Non-functional_requirement" title="Non-functional requirement">Non-functional requirement</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Capacity_planning" title="Capacity planning"> Capacity</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Active_users" title="Active users"> Users</a></li>
<li><a href="Central_processing_units" class="mw-redirect" title="Central processing units"> Compute</a></li>
<li><a href="Computer_memory" title="Computer memory"> Memory</a></li>
<li><a href="Computer_data_storage" title="Computer data storage"> Storage</a></li>
<li><a href="Bandwidth_(computing)" title="Bandwidth (computing)"> Network</a></li>
<li><a href="Web_traffic" title="Web traffic">Web traffic</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Interface_(computing)" title="Interface (computing)"> Interface</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="API" title="API">API</a></li>
<li><a href="SOAP" title="SOAP">SOAP</a></li>
<li><a href="REST" title="REST">REST</a></li>
<li><a href="GraphQL" title="GraphQL">GraphQL</a></li>
<li><a href="GRPC" title="GRPC">gRPC</a></li>
<li><a href="Webhook" title="Webhook">Webhook</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="High-level_design" title="High-level design">High-level design</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Client_(computing)" title="Client (computing)"> Client</a></li>
<li><a href="Load_balancing_(computing)" title="Load balancing (computing)"> Load balancing</a></li>
<li><a href="Application_server" title="Application server">Application server</a></li>
<li><a href="Message_queue" title="Message queue">Message queue</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="System_Integration" class="mw-redirect" title="System Integration"> Integration</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Vertical_integration" title="Vertical integration"> Vertical</a></li>
<li><a href="Peer-to-peer" title="Peer-to-peer">Peer-to-peer</a></li>
<li><a href="API_management" title="API management"> API Gateway</a></li>
<li><a href="Publish%E2%80%93subscribe_pattern" title="Publish–subscribe pattern"> pub-sub</a></li>
<li><a href="Event_store" title="Event store"> Event Source</a></li>
<li><a href="Extract%2C_transform%2C_load" title="Extract, transform, load"> ETL</a></li>
<li><a href="Batch_processing" title="Batch processing"> Batch</a></li>
<li><a href="Stream_processing" title="Stream processing">Stream</a></li>
<li><a href="Orchestration_(computing)" title="Orchestration (computing)"> Orchestration</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Architectures" class="mw-redirect" title="Architectures">Architectures</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Monolithic_application" title="Monolithic application"> Monolithic</a></li>
<li><a href="Microservices" title="Microservices">Microservices</a></li>
<li><a href="Event-driven_architecture" title="Event-driven architecture"> Event-Driven</a></li>
<li><a href="Client%E2%80%93server_model" title="Client–server model"> Client–server</a></li>
<li><a href="Serverless_computing" title="Serverless computing"> Serverless</a></li>
<li><a href="Circuit_breaker_design_pattern" title="Circuit breaker design pattern"> Circuit breaker</a></li>
<li><a href="Rate_limiting" title="Rate limiting">Rate limiting</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Database" title="Database">Database</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Relational_database" title="Relational database"> Relational</a></li>
<li><a href="NoSQL" title="NoSQL">NoSQL</a></li>
<li><a href="Graph_database" title="Graph database"> Graph</a></li>
<li><a href="Key%E2%80%93value_database" title="Key–value database"> Key–value</a></li>
<li><a href="Log-structured_merge-tree" title="Log-structured merge-tree"> LSM Tree </a></li>
<li><a href="Time_series_database" title="Time series database"> Time series</a></li>
<li><a href="Data_orientation" title="Data orientation"> Column Oriented</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Systems_design" title="Systems design"> Principles</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Consistency_(database_systems)" title="Consistency (database systems)">Consistency</a></li>
<li><a href="Reliability_engineering" title="Reliability engineering">Reliability</a></li>
<li><a href="CAP_theorem" title="CAP theorem">CAP theorem</a></li>
<li><a href="Software_maintenance" title="Software maintenance"> Maintainability</a></li>
<li><a href="Computer_configuration" title="Computer configuration"> Configurability</a></li>
<li><a href="Modularity" title="Modularity">Modularity</a></li>
<li><a href="Durability_(database_systems)" title="Durability (database systems)"> Durability</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Scalability" title="Scalability">Scalability</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Service_statelessness_principle" title="Service statelessness principle"> Stateless</a></li>
<li><a href="Asynchronous_I/O" title="Asynchronous I/O">Asynchronous I/O</a></li>
<li><a href="Loose_coupling" title="Loose coupling">Loose coupling</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Availability" title="Availability">Availability</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Fault_tolerance" title="Fault tolerance">Fault tolerance</a></li>
<li><a href="Failover" title="Failover">Failover</a></li>
<li><a href="Single_point_of_failure" title="Single point of failure">Single point of failure</a></li>
<li><a href="Replication_(computing)" title="Replication (computing)"> Replication</a></li>
<li><a href="Consistent_hashing" title="Consistent hashing">Consistent hashing</a></li>
<li><a href="Circuit_breaker_design_pattern" title="Circuit breaker design pattern"> Circuit breaker</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Latency_(engineering)" title="Latency (engineering)">Latency</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Cache_(computing)" title="Cache (computing)"> Cache</a></li>
<li><a href="Content_delivery_network" title="Content delivery network"> CDN</a></li>
<li><a href="Shard_(database_architecture)" title="Shard (database architecture)"> Shard </a></li>
<li><a href="Database_index" title="Database index">Database index</a></li>
<li><a href="Cache_prefetching" title="Cache prefetching"> Pre-caching</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Computer_data_storage" title="Computer data storage"> Storage</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Object_storage" title="Object storage">Object storage</a></li>
<li><a href="Block-level_storage" title="Block-level storage"> Block storage</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Observability_(software)" title="Observability (software)"> Observability</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Logging_(computing)" title="Logging (computing)"> Logging</a></li>
<li><a href="Software_metric" title="Software metric"> Metrics</a></li>
<li><a href="Tracing_(software)" title="Tracing (software)"> Tracing </a></li>
<li><a href="Failure_rate" title="Failure rate"> Error rate </a></li>
<li><a href="Queries_per_second" title="Queries per second">Queries per second </a></li>
<li><a href="Notification_system" title="Notification system">Notification system</a></li>
<li><a href="Anomaly_detection" title="Anomaly detection">Anomaly detection</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Related fields</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Computer_engineering" title="Computer engineering">Computer engineering</a></li>
<li><a href="Computer_science" title="Computer science">Computer science</a></li>
<li><a href="Information_science" title="Information science">Information science</a></li>
<li><a href="Project_management" title="Project management">Project management</a></li>
<li><a href="Risk_management" title="Risk management">Risk management</a></li>
<li><a href="Systems_engineering" title="Systems engineering">Systems engineering</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2" style="font-weight:bold;"><div>
<ul><li><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> Category</li>
<li><span class="noviewer" typeof="mw:File"><span title="Commons page"></span></span> <a href="https://commons.wikimedia.org/wiki/Category:Software_engineering" class="extiw external" title="commons:Category:Software engineering">Commons</a></li></ul>
</div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-08-07" href="https://en.wikipedia.org/wiki/?title=Database_model&amp;oldid=1304680351">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>